#ifndef DISPATCHER_H
#define DISPATCHER_H

#include "stdafx.h"
#include "../Core/Singleton.h"
#include "../Core/Thread.h"
#include "../Core/Mutex.h"
#include "../Shared/Request.h"

class Dispatcher: public Singleton<Dispatcher>, public Thread
{
    public:
        Dispatcher();
        virtual ~Dispatcher();

        void Execute();
    protected:
        virtual void ProcessRequest(Request pRequest);

    private:
        Mutex mJobMutex;
};

#endif // DISPATCHER_H
